#include "api/managerTask.h"

#include "control.pb.h"
#include "localization.pb.h"
#include <google/protobuf/io/zero_copy_stream_impl.h>
#include <google/protobuf/text_format.h>

#include <ecal/ecal.h>
#include <ecal/msg/protobuf/publisher.h>
#include <ecal/msg/protobuf/subscriber.h>

using namespace std;

#include "../include/tool/log.h"
/**
 * @author: tianxiaohuahua
 * @date: 23.8
 * @description: main
 * @input:
 * @return: NULL
*/
int main(int argc, char *argv[])
{  
    spdlog::info("mover robot derver!");
    float time = 0;
    // Initialize eCAL and create a protobuf publisher
    eCAL::Initialize(argc, argv, "driver Publisher");
    eCAL::Util::EnableLoopback(true); // 启用 eCAL 消息环回，这意味着订阅者将从同一进程的发布者接收消息（默认值 == false）
    
    C_managerTask managerTask;
    managerTask.initManager(); // 初始化所有驱动，创建对应的驱动设备的线程
    managerTask.setAllTaskStart(); // 启动所有线程
    managerTask.setThreadMonitor(); // 设置线程监控
}


